Computer networks consisting of end stations, routers, hubs, switches, gateways, firewalls, and other network devices are in widespread use. Management and support issues are perhaps the most difficult issues to grapple with in networked computing. The upside is that the benefits of networks are real—lower hardware and software costs, more flexible systems, easier to use front-ends. Unfortunately, administration and support is more costly than for centralized systems. Networked computing often disperses network devices across a wide geographic area and creates time-consuming problems for network administrators concerned with keeping these systems running.
Several conventional standards are available to administrators for managing networks and systems. One such standard is Simple Network Management Protocol (SNMP), which is currently the most widely implemented protocol for management of network devices such as routers, hubs and switches. SNMP performs relatively simple management of the components in a network. SNMP uses object-oriented techniques to describe the information to be managed. Each piece of information to be managed is called a managed object. The managed objects can represent anything that needs to be managed, for example, an entire host, a program, or a variable maintaining a counter of Transmission Control Protocol (TCP) packets.
A Management Information Base (MIB) defines a structured collection of the managed objects. This structured collection of managed objects is commonly referred to as a MIB tree, which is a hierarchical data base with names and variables for each object component within the tree. Objects are defined by their hierarchical location in the MIB tree. For example, the IP object group is defined by the location value 1.3.6.1.2.1.4. This number is referred to as a MIB variable. A new object and its corresponding MIB variable is always added in the tree “down and to the right.” SNMP is the protocol used to set values and retrieve values of MIB variables.
FIG. 1 shows a conventional network system. A local area network (LAN) 103 is protected from a separate public or untrusted network 100 by a firewall 102, which is a gateway device that is configured or programmed to control access to network 103 of devices coupled to network 100. The network 100 may be, for example, the global, packet-switched internetwork known as the Internet, a wide area network (WAN), etc.
LAN 103 includes one or more network devices 106, 108. Each network device is a router, switch, hub, etc., that is coupled to one or more servers, printers, workstations, personal computers, or other end station devices. There may be multiple LANs 103 connected to the Network 100. Although FIG. 1 depicts only two network devices 106, 108 in a practical system there may be hundreds or thousands of network devices, distributed over a wide geographic area, and many network management systems 104.
A MIB 110 is stored in and managed by each of the network devices 106, 108. Each MIB 110 stores values of MIB variables that pertain to the associated network device 106, 108.
A network management system (NMS) 104 manages the network devices 106, 108 by, among other things, collecting information from the MIBs 110, processing the MIB information, and presenting it to a user or display device. As mentioned above, SNMP is typically the protocol for doing such managing. NMS 104 comprises one or more software program elements that manage one or more local databases of network management information. An example of a commercial product that is suitable for use as NMS 104 is Resource Manager Essentials, commercially available from Cisco Systems, Inc., San Jose, Calif.
As an example of NMS processing, a MIB engine in the NMS provides active background daemons that monitor current values of network device MIB variables as compared to historical data in order to identify trends and unusual developments in the network devices. From the NMS, triggers can be used to launch corrective actions in the network devices 106, 108. Since a portion of the management data is maintained by the network devices themselves and stored in the MIBs, data of interest may be spread on MIBs 110 throughout the network system. The NMS 104 maintains aggregate snapshots of this distributed data. However, the data stored by the NMS 104 is not as up-to-date as the data in the MIBs.
The primary value of SNMP comes from the MIB data it manages. In practice, the primary value of SNMP comes from the ability to navigate through MIB trees and to understand the MIB vocabularies. Unfortunately, there is nothing simple about MIBs or their arcane vocabularies. MIBs are not very human-friendly as they have been designed to be used by applications.
Moreover, MIBs are typically accessible by humans only through NMS terminals, which are not always convenient for administrators. The conventional NMS features do not provide human-friendly tools for accessing MIB variables. NMS tools, for example, typically do not present to the network administrator the MIB variables in an organized format, such as a MIB tree, which was discussed above. Only the most experienced network administrators can make sense of the multitude of MIB variables within a MIB. In other cases, NMS functions that retrieve and set values of MIB variables are embedded in the NMS software and cannot be used to selectively retrieve values of MIB variables that interest a particular user.
Thus, there is a need for a method and apparatus that makes objects in MIB trees more accessible to human users. More specifically, there is a need for tools to make MIBs more accessible and thereby reduce the number of costly problems that administrators must deal with on a daily basis in keeping their network systems running.
In particular, there is a need for a method and apparatus that enables a human user to view values of MIB variables through means other than a network management system.